The invention relates generally to asynchronous transfer mode (ATM) networks and, more particularly, to high speed weighted queuing systems for ATM switches.
Weighted fair queuing, (also known as packetized general processor sharing (PGPS), may be come important in the next generation of ATM switching system and routers in order to fairly share bandwidth while allowing for a guaranteed minimum delay to individual connections sharing a particular transmission facility. However, to date, the implementation of weighted fair queuing algorithms have been problematic and difficult to scale to a large number of connections. For example, in conventional weighted fair queuing, the complexity of an ideal implementation is 0(N)+0(logN) where N is the number of circuits, 0(N) represents the recalculation for all head-of-line packets for all circuits, and 0(logN) is the amount of calculations involved in resorting all of the reference finishing times. The next generation of ATM switches is expected to include tens of thousands of connections and operate at multi-gigabit rates. Accordingly, a scalable, highly efficient implementation of a weighted fair queuing algorithm is necessary.
The present invention provides improved algorithms for performing queuing in an ATM switch. In particular, the invention provides a highly efficient implementation of a weighted fair queuing algorithm in an ATM switch where the packets are of a fixed size. Although some important approximations are made in the proposed implementation, all of the properties of an ideal weighted fair queuing algorithm are preserved. The sorting algorithms in accordance with the present invention are advantageous in that it is possible to maintain appropriate servicing of connections without sorting all of the individual connections. This may be accomplished by presorting each of the individual virtual circuit connections into a finite number of predetermined bins according to a weight associated with the connection. Thereafter, only the bins need be sorted without having to sort each of the individual connections. Accordingly, the invention is suitable for implementations having transmission speeds of multiple gigabits-per-second.